1
Paradigmi Architetturali: von Neumann vs. Harvard
AI021Lesson 3
00:00

Il design fondamentale di un sistema computazionale è definito dal rapporto tra l'Unità di Elaborazione e la Memoria. La principale differenza risiede nel fatto che istruzioni e dati condividano un percorso comune o utilizzino canali indipendenti.

1. Architettura di von Neumann

Utilizzata da sistemi general-purpose come x86-64, questo modello presenta uno spazio di memoria unificato. L'unità centrale accede sia al codice che ai dati tramite un singolo bus, causando il collo di bottiglia di von Neumann: il ritardo subito quando l'unità centrale deve multiplexare il bus tra il prelevamento delle istruzioni e l'accesso agli operandi.

2. Architettura di Harvard

Comune nei processori specializzati e nelle implementazioni della cache L1 ARMv8-A della cache L1, questo design utilizza archiviazione fisica separata della memoria e percorsi di segnale. Ciò permette il prelievo simultaneo di un opcode e di un operando dati, aumentando significativamente il throughput.

CPUMemoriaBus condiviso unificato (collo di bottiglia)

Diagramma a blocchi: Ciclo di prelievo della memoria nell'architettura di von Neumann che mostra l'utilizzo sequenziale del bus.

3. Convergenza Strutturale

I moderni sistemi HPC spesso utilizzano una architettura di Harvard modificata. Comportano come macchine di Harvard a livello di cache L1 (cache I e D separate) per massimizzare la velocità, mantenendo contemporaneamente un modello di von Neumann nella RAM principale per flessibilità programmabile.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>